package com.neusoft.databus.policy.service;

import java.util.List;

import com.neusoft.databus.policy.enums.EventStatus;
import com.neusoft.databus.policy.enums.PolicyType;
import com.neusoft.databus.policy.model.Event;

public interface EventService {

    List<Event> findByStatus(EventStatus eventStatus);

    Event create(Event model);

    void delete(Event model);

    List<Event> findByResourceCodeAndStatus(String resourceCode, final EventStatus status);

    List<Event> findByPolicyIdAndStatus(final Long policyId, final EventStatus status);

    void deleteById(Long id);

    Event update(Event model);

    Event eventTrigger(Event model);

    void eventFixed(Event model);

    void eventFixed(List<Event> models);

    Integer eventCount(PolicyType policyType);
}
